// axios 请求
/**
 * 1. 封装功能函数
 *  - 功能明确
 *  - 函数内部应该保留固定代码(静态) 
 * 2. 封装功能组件
 * 
 */

import config from "./config";
export default (url, data={}, method='GET')=>{
    return new Promise((resolve,reject)=>{
      // 1. new Promise 初始化promise实例的状态为pending
      wx.request({
        url: config.host + url,
        data,
        header: {
          cookie: wx.getStorageSync('cookies')?wx.getStorageSync('cookies').find(item => item.indexOf('MUSIC_U') !== -1) : ''
        },
        method,
        dataType: 'json',
        responseType: 'text',
        success: (res) => {
          // console.log('请求成功',res);
          if(data.isLogin){  // 登录请求
            // 将用户 cookie 存入本地
            wx.setStorage({
              'key':'cookies',
              data: res.cookies
            })
          }
          resolve(res.data);
        },
        fail: (err) => {
          console.log(err);
          reject(err)
        },
        // complete: () => {}
      });
    })
}